home *** CD-ROM | disk | FTP | other *** search
/ Master Visual Basic 3 / Master Visual Basic 3 (SAMS Publishing) (1994).ISO / mvprog / original / ch04 / multipad / multipad.bas < prev    next >
Encoding:
BASIC Source File  |  1994-06-07  |  2.5 KB  |  103 lines

  1. Option Explicit
  2.  
  3. ' Number of children
  4. Global ggNumChildren As Integer
  5.  
  6. Function FileSaveAs ()
  7.     Dim Msg, Answer
  8.  
  9.     FileSaveAs = True
  10.  
  11.     If ggNumChildren = 0 Then
  12.        FileSaveAs = False
  13.        Exit Function
  14.     End If
  15.  
  16.  
  17.  
  18.     ' Set an error trap to detect the clicking
  19.     ' of the Cancel key of the Save As dialog box.
  20.     On Error GoTo SaveAsError
  21.  
  22.     ' Fill the items of the File Type list box of
  23.     ' the Open dialog box.
  24.     frmMultipad.CMDialog1.Filter = "All Files (*.*) |*.* |Text Files (*.txt)|*.txt|DOS Batch Files (*.bat)|*.bat"
  25.  
  26.     ' Set the default File Type to TXT files (*.txt).
  27.     frmMultipad.CMDialog1.FilterIndex = 2
  28.  
  29.     ' Display the Save As dialog box.
  30.     frmMultipad.CMDialog1.Action = 2
  31.  
  32.     ' Remove the error trap.
  33.     On Error GoTo 0
  34.     
  35.     ' If the file specified by the user exists, and its
  36.     ' size is not zero, ask the user if to overwrite it.
  37.     If Dir(frmMultipad.CMDialog1.Filename) <> "" Then
  38.        Msg = frmMultipad.CMDialog1.Filename + Chr(13)
  39.        Msg = Msg + "This file already exists." + Chr(13) + Chr(13)
  40.        Msg = Msg + "Replace existing file?"
  41.        Answer = MsgBox(Msg, MB_ICONEXCLAMATION + MB_YESNO, "Multipad")
  42.        If Answer = IDNO Then
  43.           FileSaveAs = False
  44.           Exit Function
  45.        End If
  46.     End If
  47.     
  48.     ' Set mouse cursor to hourglass.
  49.     frmMultipad.ActiveForm.MousePointer = 11
  50.  
  51.     ' Change the FileName to the filename that
  52.     ' the user selected, and issue a Save command.
  53.     frmMultipad.ActiveForm.lblFilename.Caption = frmMultipad.CMDialog1.Filename
  54.     SaveFile
  55.     
  56.     ' Set mouse cursor to default.
  57.     frmMultipad.ActiveForm.MousePointer = 0
  58.  
  59.     ' Reset the chkFileHasChanged flag.
  60.     frmMultipad.ActiveForm.chkFileHasChanged = False
  61.        
  62.     ' Set the title of the child window.
  63.     frmMultipad.ActiveForm.Caption = frmMultipad.CMDialog1.Filetitle
  64.  
  65.     
  66.     ' Exit the procedure.
  67.     Exit Function
  68.  
  69. SaveAsError:
  70.     ' The user clicked the Cancel button.
  71.     FileSaveAs = False
  72.     Exit Function
  73.  
  74. End Function
  75.  
  76. Sub SaveFile ()
  77.  
  78.     Dim FileNum
  79.  
  80.     If ggNumChildren = 0 Then
  81.        Exit Sub
  82.     End If
  83.  
  84.  
  85.   
  86.  
  87.     ' Get a free file number
  88.     FileNum = FreeFile
  89.     
  90.     ' Open the file
  91.     Open frmMultipad.ActiveForm.lblFilename.Caption For Output As FileNum
  92.  
  93.     ' Write the contents of the text file into the file
  94.     Print #FileNum, frmMultipad.ActiveForm.txtDocument.Text
  95.  
  96.     ' Close the file
  97.     Close FileNum
  98.  
  99.     frmMultipad.ActiveForm.chkFileHasChanged.Value = 0
  100.  
  101. End Sub
  102.  
  103.